<?php

/** 
* 
* 
* by:南宁火蝶科技有限公司 http:///www.HdsysCms.com
* 声明:本系统禁止用二次开发、侵犯HdsysCms著作和除去HdsysCms进行售卖,如发现将追究一切权利,模版制作属于自己所得可以通过本系统对外开发模版获取收益!
* 
* 2019年第一版本发布 - 到2023.9.1开源使用! 
* php混淆工具:phpencry.wbox.top
* 
* 注意防骗:@HdsysCms 官方没授权任何个人机构合作,唯一收款抬头:《南宁火蝶科技有限公司》和官网显示客服唯一渠道客服,其它渠道以HdsysCms名义行为均骗子!
*
*/
	

defined('HDSYS_SET') or call_my_die("" . 'Not,This File Not Can in Ie Open');
if (HDSYS_SET !='ADMIN') {
call_my_die("" . '访问路径错误');
}
class Ad
{
public function __construct()
{
$this->intelligence_session=bs_lib::load_libhdsys_class("" . 'session');
$this->intelligence_session->intelligence_session_open();
$this->intelligence_db=bs_lib::load_libhdsys_class(templates_Verifications_db());
$this->purconfig=bs_lib::load_libhdsys_class('purconfig');
bs_lib::load_modules_common();
isadminlogin();
}
function call_lets()
{
include bs_lib::load_default_path();
}
function call_mode()
{
include bs_lib::load_default_path();
}
function call_info()
{
$param_id=set_get('id');
if ($param_id=='') {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> 'ID错误 '));
}
$param_josn_array=call_my_get_templates_info($param_id);
include bs_lib::load_default_path();
}
function call_table()
{
include bs_lib::load_default_path();
}
public function call_table_ajax()
{
$param_id=set_get('id');
if ($param_id=='') {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> 'ID错误 '));
}
$param_id=call_my_str_replace('/', '', $param_id);
$param_id=call_my_str_replace('\\', '', $param_id);
$param_id=call_my_str_replace('..', '', $param_id);
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id  . '/modular';
if (!is_dir($param_dir)) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '目录不存在 ' . 'templates/' . $param_id  . '/modular'));
}
$param_dir_list=glob($param_dir . '/' . '*.modular.php');
$showinfo='';
$param_while_array_list_all=array();
$param_tmp_rows=0;
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id  . '/modular';
sort($param_dir_list);
foreach ($param_dir_list as $param_file) {
$param_file_show=str_replace($param_dir . '/', '', $param_file);
if (is_file($param_file)) {
$param_tmp_rows++;
$param_filetxt=file_get_contents($param_file);
if (stripos($param_filetxt, 'return array(') > 0 or stripos($param_filetxt, 'return') > 0) {
$param_arr=include($param_file);
if (isset($param_arr['name']) && isset($param_arr[call_my_str_code()])) {
$param_while_array_list_all[]=array('name'=> $param_arr['name'], call_my_str_code()=> $param_arr[call_my_str_code()], 'id'=> $param_file_show);
}
}
}
}
$param_json_array=array();
$param_json_array[call_my_str_data()]=(array) $param_while_array_list_all;
$param_json_array[call_my_str_code()]=0;
$param_json_array[call_my_str_msg()]='';
$param_json_array[call_my_str_count()]=$param_tmp_rows;
print_json($param_json_array);
}
public function call_del()
{
$param_id=set_post('id');
$param_fileid=set_post('fileid');
$param_id=call_my_str_replace('/', '', $param_id);
$param_id=call_my_str_replace('\\', '', $param_id);
$param_id=call_my_str_replace('..', '', $param_id);
$param_fileid=call_my_str_replace('/', '', $param_fileid);
$param_fileid=call_my_str_replace('\\', '', $param_fileid);
$param_fileid=call_my_str_replace('..', '', $param_fileid);
$param_File_Name=HDSYS_DIR_SYS . 'templates/' . $param_id . '/modular/' . $param_fileid;
if (!file_exists($param_File_Name)) {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '文件不存在' . $param_File_Name));
}
$param_tmp=@unlink($param_File_Name);
if ($param_tmp) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '删除成功'));
} else {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '删除失败 ' . $param_File_Name));
}
}
public function call_edit()
{
$param_id=set_get('id');
$param_fileid=set_get('fileid');
$param_id=call_my_str_replace('/', '', $param_id);
$param_id=call_my_str_replace('\\', '', $param_id);
$param_id=call_my_str_replace('..', '', $param_id);
$param_fileid=call_my_str_replace('/', '', $param_fileid);
$param_fileid=call_my_str_replace('\\', '', $param_fileid);
$param_fileid=call_my_str_replace('..', '', $param_fileid);
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id . '/modular/' . $param_fileid;
if (!file_exists($param_dir)) {
echo '模块文件不存在';
exit;
}
$param_db_array_value=include($param_dir);
if (!isset($param_db_array_value['name']) && !isset($param_db_array_value[call_my_str_code()])) {
echo '模块文件内容错误';
exit;
}
include bs_lib::load_default_path();
}
public function call_edit_ajax()
{
$param_array=array();
$param_array['name']=set_post("" . 'name');
$param_array[call_my_str_code()]=set_post("" . 'code');
$param_array['title']=set_post("" . 'title');
$param_array['etitle']=set_post("" . 'etitle');
$param_array['content']=set_post("" . 'content', 1);
$param_array['econtent']=set_post("" . 'econtent', 1);
$param_array['imges']=set_post("" . 'imges');
$param_array['eimges']=set_post("" . 'eimges');
$param_array['url']=set_post("" . 'url');
$param_array['eurl']=set_post("" . 'eurl');
$param_id=set_post("" . 'id');
$param_fileid=set_post("" . 'fileid');
$param_code_array_php=ArrayToCodeFile($param_array);
$param_File_Name=HDSYS_DIR_SYS . 'templates/' . $param_id . '/modular/' . $param_fileid;
if (!file_exists($param_File_Name)) {
print_json(array(call_my_str_code()=> call_my_int_0(), call_my_str_msg()=> '文件不存在' . $param_File_Name));
}
$param_tmp=@file_put_contents($param_File_Name, $param_code_array_php);
if ($param_tmp) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '保存成功，清理缓存前端更新'));
} else {
print_json(array(call_my_str_code()=> call_my_int_0(), call_my_str_msg()=> '确认是否能写入777权限 ' . $param_File_Name));
}
}
public function call_add()
{
include bs_lib::load_default_path();
}
public function call_adds_ajax()
{
$param_name=set_post("" . 'name');
$param_code=set_post("" . 'codes');
$param_id=set_post("" . 'id');
if ($param_id=='') {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '模版目录错误'));
}
if ($param_name=='') {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '请输入名称'));
}
if ($param_code=='') {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '请输入代号'));
}
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id  . '/modular';
if (!is_dir($param_dir)) {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '目录不存在 ' . 'templates/' . $param_id  . ''));
}
$param_array=array('name'=> $param_name, call_my_str_code()=> $param_code, 'title'=> '', 'etitle'=> '', 'content'=> '', 'econtent'=> '', 'imges'=> '', 'eimges'=> '', 'url'=> '', 'eurl'=> '');
$param_md5=call_my_md5(time());
$param_file=$param_code . '.' . $param_md5 . '.modular.php';
$param_File_Name=$param_dir . '/' . $param_file;
if (file_exists($param_File_Name)) {
print_json(array(call_my_str_code()=> call_my_int_0(), call_my_str_msg()=> '同名文件已经存在' . $param_File_Name, 'file'=> $param_file));
}
$param_code_array_php=ArrayToCodeFile($param_array);
$param_tmp=@file_put_contents($param_File_Name, $param_code_array_php);
if ($param_tmp) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '模块创建成功', 'file'=> $param_file));
} else {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), call_my_str_msg()=> '模块创建失败目录是否可写入 ' . $param_File_Name, 'file'=> $param_file));
}
}
function call_document()
{
include bs_lib::load_default_path();
}
public function call_document_ajax()
{
$param_id=set_get('id');
if ($param_id=='') {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> 'ID错误 '));
}
$param_id=call_my_str_replace('/', '', $param_id);
$param_id=call_my_str_replace('\\', '', $param_id);
$param_id=call_my_str_replace('..', '', $param_id);
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id  . '';
if (!is_dir($param_dir)) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '目录不存在 ' . 'templates/' . $param_id  . ''));
}
$param_dir_list=call_my_read_dir_file($param_dir);
$showinfo='';
$param_while_array_list_all=array();
$param_tmp_rows=0;
$param_dir=HDSYS_DIR_SYS . 'templates/' . $param_id  . '';
rsort($param_dir_list);
foreach ($param_dir_list as $param_file) {
$param_file_show=str_replace($param_dir . '/', '', $param_file);
if (is_file($param_file)) {
$param_tmp_rows++;
if (stripos($param_file_show, '.hdsys.php') > 0) {
$param_while_array_list_all[]=array('name'=> $param_file_show, call_my_str_code()=> call_my_Template_name($param_file_show), 'id'=> $param_file_show);
}
}
}
$param_json_array=array();
$param_json_array[call_my_str_data()]=(array) $param_while_array_list_all;
$param_json_array[call_my_str_code()]=0;
$param_json_array[call_my_str_msg()]='';
$param_json_array[call_my_str_count()]=$param_tmp_rows;
print_json($param_json_array);
}
function call_info_ajax()
{
$param_id=set_post('id');
$param_name=set_post('name');
$param_info=set_post('info');
$param_by=set_post('by');
$param_imges=set_post('imges');
if ($param_id=='') {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> 'ID错误 '));
}
$param_arr=array(
'id'=> $param_id,
'name'=> $param_name,
'info'=> $param_info,
'by'=> $param_by,
'imges'=> $param_imges
);
if (is_dir(HDSYS_DIR_SYS . "templates/{$param_id}")===false) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '模版目录不存在'));
}
$param_statics=HDSYS_DIR_SYS . "templates/{$param_id}/statics";
if (is_dir($param_statics)===false) {
@mkdir($param_statics, 0777, true);
}
if (@is_writable($param_statics)===false) {
print_json(array(call_my_str_code()=> call_my_int_aeg1(), 'success'=> 0, 'msg'=>  "/templates/{$param_id}/statics 没有写权限。"));
}
$param_statics=HDSYS_DIR_SYS . "templates/{$param_id}/statics/templates.josn";
$param_tmp=file_put_contents($param_statics, json_encode($param_arr, JSON_UNESCAPED_UNICODE));
if ($param_tmp) {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '保存成功'));
} else {
print_json(array(call_my_str_code()=> call_my_int_1(), call_my_str_msg()=> '保存失败,无法写入' . "/templates/{$param_id}/statics/templates.josn"));
}
}
}
